//package com.zmn.plat.services.impl.part;
//
//import javax.annotation.Resource;
//
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.stereotype.Service;
//
//import com.alibaba.fastjson.JSON;
//import com.zmn.common.dto.PushMsgDTO;
//import com.zmn.common.utils.string.StringUtil;
//import com.zmn.manager.mq.ZmnMQException;
//import com.zmn.manager.mq.interfaces.ZmnMQSender;
//import com.zmn.plat.constant.MessageQueueConstant;
//import com.zmn.plat.model.entity.part.PartSku;
//
//
///**
// * @author DaiZhichao
// * @version v1.0
// * @since 2019/1/21 11:26 类说明：如果有特殊说明加上这一行
// */
//@Service
//public class PartMQService {
//
//    private Logger logger = LoggerFactory.getLogger(this.getClass());
//
//    public final static String ACTION_PUSH = "push";
//    public final static String ACTION_REMOVE = "remove";
//    public final static String ACTION_DISABLE = "disable";
//    public final static String ACTION_ENABLE = "enable";
//    public final static String ACTION_EDIT = "edit";
//
//    @Resource
//    ZmnMQSender zmnMQSender;
//
//    public boolean pushPartSku(PartSku partSku) {
//        EsPartSku esPartSku = new EsPartSku(partSku);
//        PushMsgDTO pushMsgDTO = new PushMsgDTO(partSku.getSkuId().toString(), ACTION_PUSH, JSON.toJSONString(esPartSku));
//        return this.send(pushMsgDTO);
//    }
//
//    public boolean editPartSku(PartSku partSku) {
//        EsPartSku esPartSku = new EsPartSku(partSku);
//        PushMsgDTO pushMsgDTO = new PushMsgDTO(partSku.getSkuId().toString(), ACTION_EDIT, JSON.toJSONString(esPartSku));
//        return this.send(pushMsgDTO);
//    }
//
//    public boolean removePartSku(Integer skuId) {
//        PushMsgDTO pushMsgDTO = new PushMsgDTO(skuId.toString(), ACTION_REMOVE);
//        return this.send(pushMsgDTO);
//    }
//
//    public boolean disablePartSku(Integer skuId) {
//
//        PushMsgDTO pushMsgDTO = new PushMsgDTO(skuId.toString(), ACTION_DISABLE);
//        return this.send(pushMsgDTO);
//    }
//
//    public boolean enablePartSku(Integer skuId) {
//
//        PushMsgDTO pushMsgDTO = new PushMsgDTO(skuId.toString(), ACTION_ENABLE);
//        return this.send(pushMsgDTO);
//    }
//
//    @Value(value = "${spring.mq.topic}")
//    private String topic;
//
//    private boolean send(PushMsgDTO pushMsgDTO) {
//
//        String randomKey = StringUtil.getRandomsString(32);
//        try {
//            zmnMQSender.send(topic, MessageQueueConstant.MQ_TAG_PLAT_PART_INDEX, randomKey, JSON.toJSONString(pushMsgDTO));
//        } catch (ZmnMQException e) {
//            logger.error("发送消息异常", e);
//            return false;
//        }
//        return true;
//    }
//}
